home *** CD-ROM | disk | FTP | other *** search
- // Written by Darcy Brockbank.
- // Copyright (c) 1995 by Darcy Brockbank. All rights reserved.
- //
- // This notice may not be removed from this source code.
- //
- // This object is included in the MiscKit by permission from the author
- // and its use is governed by the MiscKit license, found in the file
- // "LICENSE.rtf" in the MiscKit distribution. Please refer to that file
- // for a list of all applicable permissions and restrictions.
- //
-
- #ifndef QLIPO_H__
- #define QLIPO_H__
-
- #define cpu_type_t int
-
- extern const char *
- get_cputype(int type);
-
- extern const char *
- get_cpusubtype(int cputype, int t);
-
- extern int
- cpu_type(const char *string);
-
- extern const char *
- arch_from_type(int type);
-
- static const char *cpus[] =
- {
- #define CPU_TYPE_ANY -1
- "any",
- #define CPU_TYPE_UNKNOWN 0
- "unknown",
- #define CPU_TYPE_VAX 1
- "vax",
- #define CPU_TYPE_ROMP 2
- "romp",
- "unknown",
- #define CPU_TYPE_NS32032 4
- "ns32032",
- #define CPU_TYPE_NS32332 5
- "ns32332",
- #define CPU_TYPE_MC680x0 6
- "m68k",
- #define CPU_TYPE_I386 7
- "i386",
- #define CPU_TYPE_MIPS 8
- "mips",
- #define CPU_TYPE_NS32532 9
- "ns32532",
- "unknown",
- #define CPU_TYPE_HPPA 11
- "hppa",
- #define CPU_TYPE_ARM 12
- "arm",
- #define CPU_TYPE_MC88000 13
- "m88k",
- #define CPU_TYPE_SPARC 14
- "sparc",
- #define CPU_TYPE_I860 15
- "i860",
- #define CPU_TYPE_I860_LITTLE 16
- "i860little",
- #define CPU_TYPE_RS6000 17
- "rs6000",
- #define CPU_TYPE_MC98000 18
- "m98k",
- #define CPU_TYPE_MAX 19
- 0
- };
-
- #define CPU_SUBTYPE_MULTIPLE -1
- #define CPU_SUBTYPE_LITTLE_ENDIAN 0
- #define CPU_SUBTYPE_BIG_ENDIAN 1
-
- #define CPU_SUBTYPE_VAX_ALL 0
- #define CPU_SUBTYPE_VAX780 1
- #define CPU_SUBTYPE_VAX785 2
- #define CPU_SUBTYPE_VAX750 3
- #define CPU_SUBTYPE_VAX730 4
- #define CPU_SUBTYPE_UVAXI 5
- #define CPU_SUBTYPE_UVAXII 6
- #define CPU_SUBTYPE_VAX8200 7
- #define CPU_SUBTYPE_VAX8500 8
- #define CPU_SUBTYPE_VAX8600 9
- #define CPU_SUBTYPE_VAX8650 10
- #define CPU_SUBTYPE_VAX8800 11
- #define CPU_SUBTYPE_UVAXIII 12
-
- #define CPU_SUBTYPE_RT_ALL 0
- #define CPU_SUBTYPE_RT_PC 1
- #define CPU_SUBTYPE_RT_APC 2
- #define CPU_SUBTYPE_RT_135 3
-
- #define CPU_SUBTYPE_MMAX_ALL 0
- #define CPU_SUBTYPE_MMAX_DPC 1
- #define CPU_SUBTYPE_SQT 2
- #define CPU_SUBTYPE_MMAX_APC_FPU 3
- #define CPU_SUBTYPE_MMAX_APC_FPA 4
- #define CPU_SUBTYPE_MMAX_XPC 5
-
- #define CPU_SUBTYPE_I386_ALL 3
- #define CPU_SUBTYPE_386 3
- #define CPU_SUBTYPE_486 4
- #define CPU_SUBTYPE_486SX 4 + 128
- #define CPU_SUBTYPE_586 5
- #define CPU_SUBTYPE_586SX 5 + 128
-
- #define CPU_SUBTYPE_MIPS_ALL 0
- #define CPU_SUBTYPE_MIPS_R2300 1
- #define CPU_SUBTYPE_MIPS_R2600 2
- #define CPU_SUBTYPE_MIPS_R2800 3
- #define CPU_SUBTYPE_MIPS_R2000a 4
-
- #define CPU_SUBTYPE_MC680x0_ALL 1
- #define CPU_SUBTYPE_MC68030 1
- #define CPU_SUBTYPE_MC68040 2
- #define CPU_SUBTYPE_MC68030_ONLY 3
-
- #define CPU_SUBTYPE_HPPA_ALL 0
- #define CPU_SUBTYPE_HPPA_7100 0
- #define CPU_SUBTYPE_HPPA_7100LC 1
-
- #define CPU_SUBTYPE_ARM_ALL 0
- #define CPU_SUBTYPE_ARM_A500_ARCH 1
- #define CPU_SUBTYPE_ARM_A500 2
- #define CPU_SUBTYPE_ARM_A440 3
- #define CPU_SUBTYPE_ARM_M4 4
- #define CPU_SUBTYPE_ARM_A680 5
-
- #define CPU_SUBTYPE_MC88000_ALL 0
- #define CPU_SUBTYPE_MMAX_JPC 1
- #define CPU_SUBTYPE_MC88100 1
- #define CPU_SUBTYPE_MC88110 2
-
- #define CPU_SUBTYPE_MC98000_ALL 0
- #define CPU_SUBTYPE_MC98601 1
-
- #define CPU_SUBTYPE_I860_ALL 0
- #define CPU_SUBTYPE_I860_860 1
-
- #define CPU_SUBTYPE_I860_LITTLE_ALL 0
- #define CPU_SUBTYPE_I860_LITTLE 1
-
- #define CPU_SUBTYPE_RS6000_ALL 0
- #define CPU_SUBTYPE_RS6000 1
-
- #define CPU_SUBTYPE_SPARC_ALL 0
-
-
- #endif
-